// Copyright  2012 Petr TALLA. [petr.talla@gmail.com]
// This file is free software; you can redistribute it and/or modify it
// under the terms of the GNU Lesser General Public License
// as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This file is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY;  without even the implied warranty
// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See the GNU Lesser General Public License for more details.
// [http://www.gnu.org/copyleft/lesser.html]
//=============================================================================

package tc.crase.sys;

import java.io.File;
import java.util.Vector;

import tc.crase.db.Xdb;
import tc.crase.save.XdbLoad;

public class XdbSys {
	public Vector<XdbEx> dbs = new Vector<XdbEx>();
	public XdbEx current = new XdbEx();
	
	public XdbSys() {
		dbs.add(current);
	}
	
	public XdbEx searchDb(String url) {
		for (XdbEx dbi : dbs) {
			if (url.equals(dbi.fileName) == false) continue;
			return dbi;
		}
		
		XdbEx newDb = null;
		
		for (XdbEx dbi : dbs) {
			if (dbi.fileName.isEmpty() == false) continue;
			newDb = dbi;
			break;
		}
				
		if (newDb == null) {		
			newDb = new XdbEx();
			newDb.fileName = url; 
			dbs.add(newDb);
		}
		
		XdbLoad loader = new XdbLoad(newDb);
		loader.load(new File(url), false);
		
		return newDb;
	}
}
